<template>
    <Navtitle :titles="title"></Navtitle>
    <van-form @submit="onSubmit">
        <van-cell-group inset>
            <van-field v-model="username" name="username" label="手机号" placeholder="手机号"
                :rules="[{ pattern, message: '请填写手机号' }]" />
            <van-field v-model="sms" center clearable label="短信验证码" placeholder="请输入短信验证码" @click="yzm">
                <template #button>
                    <van-button size="small" type="primary" :disabled="time>0?true:false">{{ time>0?time+'秒后获取':'点击获取验证码' }}</van-button>
                </template>
            </van-field>
            <van-field v-model="password" :type="isShow ? 'text' : 'password'" name="password" label="密码" placeholder="密码"
                :rules="[{ required: true, message: '请填写密码' }]">
                <template #button>
                    <van-icon name="eye-o" size="30" v-if="isShow" @click="isShow = !isShow" />
                    <van-icon name="closed-eye" size="30" v-else @click="isShow = !isShow" />
                </template>
            </van-field>
        </van-cell-group>
        <div style="margin: 16px;">
            <van-button round block type="primary" native-type="submit">
                立即注册
            </van-button>
        </div>
    </van-form>
</template>

<script setup>
import { registerApi } from '@/api/api';
import Navtitle from '@/components/Navtitle.vue';
import { showToast } from 'vant';
const title = '欢迎注册'
import { ref } from 'vue';
import { useRouter } from 'vue-router';
const username = ref('');
const password = ref('');
const isShow = ref(true)
let router = useRouter()
let pattern=/^1[3-9]\d{9}$/;
let sms=ref('')
let time=ref(0)
let timer
let yzm=()=>{
    sms.value=Math.floor(Math.random()*1000000)
    time.value=10;
    if(time.value>0){
        timer=setInterval(()=>{
            time.value--;
            if(time.value==0){
                clearInterval(timer)
            }
        },1000)
    }
}
const onSubmit = () => {
    registerApi(username.value, password.value).then(res => {
        if (res.data.code == 0) {
            showToast(res.data.msg)
            router.push('/login')
        } else {
            showToast(res.data.msg)
        }
    })
};
</script>

<style lang="scss" scoped></style>
